home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-05 / chatr2.zip / CHATTER.DOC < prev    next >
Text File  |  1992-09-21  |  11KB  |  227 lines

  1. CHATTER V1.20
  2. Copyright (c) 1992 by Kurt Duncan - All Rights Reserved
  3.  
  4. This program is provided as FreeWare - You are granted a license to use
  5. this program on any number of workstations, or to install it on any number
  6. of file servers, without recompense.  You may distribute ONLY the original
  7. ZIP file, which is the sole medium of release of this software.  You may
  8. NOT distribute the separate files to any outside organization or any other
  9. parties, except in the form of the original ZIP file.
  10.  
  11. All rights remain the sole property of Kurt Duncan -
  12. Regardless of any claims to the contrary by CompuServe Information Service
  13.  
  14. The usage of this software is entirely at the risk of the user.  Kurt Duncan
  15. does not accept responsibility for any damages caused by, or incurred through
  16. the use of, this software.  No warranties are expressed or implied.  The
  17. software is provided as-is, and is not subject to update or maintenance.
  18. Be that as it may, you may leave comments or questions to:
  19.   
  20.   Kurt Duncan
  21.   CompuServe user-id 70262,40
  22.  
  23. If this software just totally fails to operate, go ahead and leave a message.
  24. Also, if you have any inkling as to why it failed, PLEASE don't hesitate
  25. to suggest solutions.
  26.  
  27. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  28.  
  29. Files you should have received include:
  30.  
  31.   CHATTER.C      The source code (surprise!)
  32.                  You do not need ANY developer kits to compile this code.
  33.                  It was compiled under MS C5.1
  34.  
  35.   CHATTER.OBJ    The object file for CHATTER.C
  36.  
  37.   IPXLIB.C       More source code!
  38.                  A variety of C functions which make it easier to communicate
  39.                  using IPX as a transport.
  40.  
  41.   IPXLIB.OBJ     The object file for IPXLIB.C
  42.  
  43.   IPXLIB.H       The header file required for using IPXLIB functions.
  44.  
  45.   CHATTER.EXE    The executable code for CHATTER
  46.  
  47.   CHATTER.DOC    This file.
  48.  
  49. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  50.  
  51. This program is a simple vehicle for conferencing between multiple
  52. workstations which are connected to a Novell Network.  The only purpose for
  53. the development of this software was to gain some experience in programming
  54. for NetWare.  The software was developed on a 486DX/33 system, and verified
  55. on various 386 & 486 platforms.  IPXODI V1.20 was used during development
  56. and testing.  NETX is not necessary for the operation of this software.
  57. The compiler was MicroSoft 6.0.  Personally, I preferred 5.10.
  58.  
  59. For the sake of simplicity, I write directly to screen memory, starting at
  60. address B800:0000.  This should work for most video adapters that are
  61. currently on the market.  CHATTER.EXE has been tested in a normal DOS
  62. environment, and in a DOS non-windowed application environment under Windows
  63. 3.1 enhanced mode.
  64.  
  65. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  66.  
  67. To execute the program, enter:
  68.  
  69. CHATTER [switches] [identifier]
  70.  
  71. [identifier] is the unique code by which your messages will be identified.
  72. You may use up to eight characters.  If you do not specify an identifier,
  73. your messages will be identified as "<anon>".
  74.  
  75. [switches] are one or more of the following:
  76.  
  77.  -rnn     nn indicates the number of rows on your display.
  78.           The following line might be used on a VGA display:
  79.              CHATTER -r50
  80.           Note that CHATTER does NOT change your video mode.
  81.  
  82.  -m       used to indicate the presence of a monochrome monitor.
  83.           This will affect the colors used on the display.
  84.           CHATTER will STILL write to B800:0000 - this option is NOT
  85.           for use with old-style monochrome text-only video boards.
  86.  
  87.  -shhhh   hhhh is a hex value indicating the IPX socket number to be
  88.           used for communication.  You will normally not need to alter
  89.           this value, which defaults to 5000 (hex).  You may use this
  90.           option to provide separate channels for conferencing.
  91.  
  92.  -bnn     nn indicates the number of buffers that are to be allocated.
  93.           Messages are sometimes received faster than the polling
  94.           algorithm can handle, so several buffers are set up to help
  95.           cushion the various bursts of traffic.  Such bursts are
  96.           particularly noticeable when workstations respond to a probe
  97.           message.  This value defaults to 16, which is a reasonable
  98.           minimum value.  You should, however, set it no less than the
  99.           maximum number of concurrent CHATTER users.
  100.  
  101.  -nhhhh   hhhh is a hex value indicating the initial number to which
  102.           messages are to be sent.  Multiple networks may be specified
  103.           by using multiple occurrences of this switch.  If not given,
  104.           the local network is assumed.  More on this later.
  105.  
  106. The display is made up of two areas.  The top area, consisting of the
  107. entire display except for the last line, is the message display area.  The
  108. last line is used for message input.  Two types of messages will be
  109. displayed in the message display area.
  110.  
  111.   Messages that are read from the network will be prefixed by the identifier 
  112.   associated with the sender.  In other words, if someone who executed 
  113.   CHATTER with an identifier of JOE-S sent a message, it would appear as:  
  114.  
  115.     JOE-S    Hello, World!
  116.  
  117.   Messages that are displayed by CHATTER to the local display do not have
  118.   such a prefix.  These message may include help text and trace information.
  119.  
  120. When you execute CHATTER, the cursor, which is a solid underline, is placed
  121. in the first column of the message input area.  Several messages will be
  122. displayed, including the name and level of the software, along with the
  123. current settings.  You may begin entering text.  When you hit the return key,
  124. the text that you keyed into the input area will be broadcast to the network,
  125. to be picked up by all CHATTER users including yourself.  The input area is
  126. cleared, and the cursor is returned to the first column.  You should
  127. immediately see your message appear at the bottom of the display area,
  128. prefixed by your ident code.  That same message will appear in the display
  129. area of all other CHATTER users.
  130.  
  131. If the text you enter is preceeded by a backslash (\), CHATTER will try to
  132. interpret your input as a CHATTER command, rather than as a message.  The
  133. following command are recognized:
  134.  
  135.   \EXIT  (or ESC key) - terminates CHATTER
  136.   \HELP  (or F1  key) - displays a list of valid commands
  137.   \TRACE (or F2  key) - toggles trace mode on and off
  138.   \WHO   (or F3  key) - sends a probe message, causing all CHATTER users
  139.                           to send respond messages to you.  This happens
  140.                           transparently to the other users.
  141.   \NETS  (or F4  key) - lists active network numbers
  142.  
  143. While trace mode is active, all network traffic to and from your workstation,
  144. on the specified socket number, will be monitored.  A message will appear in
  145. your display area for each packet.  This is an interesting, if not very
  146. useful, feature.  It was useful primarily during development.
  147.  
  148. Common Messages:
  149.  
  150.   xxxxxxxx << Joining Conference >>
  151.     The user identified by xxxxxxxx just executed CHATTER, and is now able
  152.     to send and receive messages.
  153.  
  154.   xxxxxxxx << Leaving Conference >>
  155.     The user has issued the \EXIT command or pressed the ESC key, terminating
  156.     CHATTER.
  157.  
  158.   xxxxxxxx << Responding to Probe >>
  159.     This is the result of a \PROBE command from you.  It is the means by
  160.     which you can identify all of the current conferencees.  When you
  161.     execute chatter, a probe is automatically sent.
  162.  
  163.  
  164. About multiple network numbers: (new with v1.20)
  165.  
  166. In its initial state, CHATTER will send messages only to the local network.
  167. This disallows sending messages across routers into other networks.  However,
  168. CHATTER maintains an internal list of networks from which it has received
  169. messages, and all output is sent to each network in this list.  In other
  170. words, all it takes to get CHATTER to send messages to network (x) is to
  171. receive a message from network (x).  Henceforth, all CHATTER sends will go
  172. to network (x) as well as any other networks from which it has received
  173. messages.  This list will naturally include the local network, as CHATTER
  174. will almost immediately receive its own messages at startup time, from the
  175. local network.
  176.  
  177. So the big question is, how do we get someone else's CHATTER, on a distant
  178. network, to send the message which allows our CHATTER to respond?  Some
  179. client on our network has to send a message to that distant network first.
  180. The propagation scheme sounds good, but how do we get that first message
  181. going?
  182.  
  183. A new switch has been added to allow CHATTER users to specify network
  184. numbers which are placed in the initial table.  The initial list *MUST*
  185. include the local network number as well as the network numbers of all
  186. remote networks which are to be included in communication.  The format of 
  187. the switch is:
  188.  
  189.   -nhhhh where hhhh is a hexadecimal network number
  190.  
  191. For example, if your local network number is 00000002, and you wish to
  192. communicate with the local network as well as network 1234ABCD, you would
  193. invoke CHATTER as follows:
  194.  
  195.   CHATTER JOE-BLOW -n2 -n1234ABCD
  196.  
  197. If you do not specify your local network, you will not see your own traffic,
  198. or any other traffic that is sent to or exists on the local network.
  199.  
  200. You might ask why we add network numbers to our internal list "on the fly",
  201. if we specify them up front.  The idea is that Joe and Marty, on net 2, may
  202. be chatting.  Now Mary comes in from net 3 with -n2 and -n3 specified.  Her
  203. initial message will cause Joe and Marty's lists to be updated such that they
  204. can communicate with Mary.  This allows some latitude for users which are
  205. not aware of the -n switch, or are unaware of various network numbers.
  206.  
  207. Due to the complexity of the processor call line in a multiple network
  208. environment, you will probably wish to invoke CHATTER via a simple batch
  209. file, which can be set up in any search drive on the file server.
  210.  
  211. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  212.  
  213. I am heavily indebted to Charles G. Rose, who authored the Programmer's
  214. Guide to NetWare, without which this project would not have been possible,
  215. and to Peter Norton, whose Programmer's Guide to the IBM PC is still on
  216. my desk, although it is about to fall apart.
  217.  
  218. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  219.  
  220. Release History:
  221.  
  222. CHATTER V1.00 - the original program, which was only released to one person.
  223.  
  224. CHATTER V1.10 - This release, which is the first official release.
  225.  
  226. CHATTER V1.20 - Support multiple network numbers
  227.